

export interface Identity {
  id: number;
  name: string;
  key: string;
  sort: number
}

export interface UserTableListItem {
  active: boolean;
  department: string;
  id: number;
  name: string;
  username: string;
}

export interface IResponse {
  header: {
    code: number;
    msg?: string;
    token?: string;
  };
  payload: {};
}

export interface RoleItem {
  isEnable: number;
  name: string;
  projectId: number;
  type: number;
}


export interface RoleTableListItem extends RoleItem{
  id: number;
  project: ProjectListObj;
  user: {
    name: string;
    id: number
  };
}

export interface ProjectListObj {
  description: string;
  id: number;
  initialOrgId: number;
  isTransfer: boolean;
  name: string;
  orgId: number;
  pic: string;
  starNum: number;
  userId: number;
  visibility: boolean;
}

export interface AllProjectList {
  avatar: string;
  description: string;
  id: number;
  name: string;
  projectId: number;
  publish: boolean;
  project: ProjectListObj
}

export interface PortaItem {
  config: string;
  dashboardPortal: AllProjectList;
  dashboardPortalId: number;
  fullParentId: string;
  id: number;
  index: number;
  name: string;
  parentId: number;
  type: number;
}

export interface TableListItem {
  key: number;
  disabled?: boolean;
  href: string;
  avatar: string;
  name: string;
  owner: string;
  desc: string;
  callNo: number;
  status: number;
  updatedAt: Date;
  createdAt: Date;
  progress: number;
}

export interface TableListPagination {
  total: number;
  pageSize: number;
  current: number;
}

export interface TableListData {
  list: TableListItem[];
  pagination: Partial<TableListPagination>;
}

export interface TableListParams {
  sorter?: string;
  status?: string;
  name?: string;
  desc?: string;
  key?: number;
  pageSize?: number;
  currentPage?: number;
}

export interface ITableListItem {
  key: number;
  disabled?: boolean;
  href: string;
  avatar: string;
  name: string;
  owner: string;
  desc: string;
  callNo: number;
  status: number;
  updatedAt: Date;
  createdAt: Date;
  progress: number;
}
